package cn.zou.blog.dao;

import java.util.ArrayList;
import java.util.List;

import cn.zou.blog.entry.Article;
import cn.zou.core.page.Page;

public interface ArticleDao {
	/**
	 * 添加文章
	 * @param article
	 */
	public void addArticle(Article article);
	/**
	 * 更新文章
	 * @param article
	 */
	public void updateArticleById(Article article);
	/**
	 * 根据id查询文章且不需要级联查询留言
	 * @param id
	 * @return
	 */
	public Article findByIdNotGuestBook(String id);
	/**
	 * 根据id查询文章且需要留言 前台方法
	 * @param id
	 * @return
	 */
	public Article findByIdAndGuestBook(String id);
	/**
	 * 根据id 删除文章
	 * @param id
	 */
	public void deleteArticleByid(String id);
	/**
	 * 根据标题来查询
	 * @param page
	 * @return
	 */
	public List<Article> findArticleByTitle(Object page);
	/**
	 * 根据标题来查询总数
	 * @param page
	 */
	public Integer findCountByTitle(Page page);
	/**
	 * 根据ID查询文章
	 * @param id
	 * @return
	 */
	public Article findById(String id);
	/**
	 * 更新文章状态
	 * @param article
	 */
	public void upadteStateArticle(Article article);
	/**
	 * 查找最新的5篇文章
	 * @return
	 */
	public List<Article> findnewArticle();
}
